const { REGISTER, LOGIN, GETUSERINFO ,LOGOUT ,GETCAPTCHA,CLOGIN,DELCAPTCHA } = require('../service/users.service')
// 引入验证器
const { usernameValidator, passwordValidator ,captchaValidator} = require('../utils/usersUtils.js')
module.exports = {
    // 注册用户
    register: async (ctx, next) => {
        const { username, password } = ctx.request.body
        // 验证用户名和密码的合理性
        if (usernameValidator(ctx) && passwordValidator(ctx)) {
            // 通过就进行下一步，不通过bouncerUtils里自行返回
            await REGISTER(ctx, next)
        }
    },
    // 用户登录
    login: async (ctx, next) => {
        // 验证用户名和密码的合理性
        if (usernameValidator(ctx) && passwordValidator(ctx)) {
            // 通过就进行下一步，不通过bouncerUtils里自行返回
            await LOGIN(ctx, next)
        }
    },
    // 获取用户信息
    getUserInfo:async(ctx,next)=>{
        await GETUSERINFO(ctx,next)
    },
    logOut:async(ctx,next)=>{
        await LOGOUT(ctx,next)
    },
    // 获取验证码
    getCaptcha:async(ctx,next)=>{
        await GETCAPTCHA(ctx,next)
    },
    // 删除验证码
    delCaptcha:async(ctx,next)=>{
        await DELCAPTCHA(ctx,next)
    },
    // 验证码登录
    clogin:async(ctx,next)=>{
         // 验证用户名和密码的合理性
         if (usernameValidator(ctx) && passwordValidator(ctx) && captchaValidator(ctx)) {
            // 通过就进行下一步，不通过bouncerUtils里自行返回
            await CLOGIN(ctx, next)
        }
    },
}